Mobile computing devices, or mobile devices (for example, smart-phones), have become more and more popular in recent years. Modern mobile devices have a processing power comparable to conventional computers. Therefore, these mobile devices make most processing activities (which had to be performed on computers in the past) substantially ubiquitous, since the mobile devices may be used almost everywhere. For example, the mobile devices allow exchanging e-mails, accessing bank accounts, sending payments.
As a consequence, the mobile devices generally store information that may be quite critical (for example, passwords). However, since the mobile devices are held and carried daily, the mobile devices are increasingly subject to accidental damages (for example, by falling down), subjecting the mobile devices to possible breakage, with a risk of losing the information stored therein.
Therefore, selected information stored in the mobile devices is often backed-up periodically (for example, by synchronizing the backed-up information with cloud services). However, any update to the information after the last synchronization of the information is lost when the mobile device breaks. Moreover, the stored information may involve some security concerns. Indeed, although access to the information stored in the cloud services requires authentication, the stored information remains available in unencrypted form to third parties.
Most mobile devices are also provided with sensors (for example, accelerometers) used to monitor accelerations of the mobile devices, so that it is possible to detect when the mobile devices are falling down. This detection of the mobile devices falling down may trigger the back-up of selected information stored in the mobile devices automatically. Thus, it is possible to back-up the latest version of the information. Moreover, the information is backed-up only when necessary and may be deleted after being restored, so that the information remains available to third parties for a short time only
For example, an agent monitors an acting force exerted on a mobile device in a vertical direction to detect when the mobile device is falling down. In response thereto, the agent sends a secure connection request to a backup server instructing the backup server to establish a communication channel for the mobile device (after authenticating the mobile device). The mobile device then uploads selected information to the backup server through this communication channel. Alternatively, the agent monitors a current posture of the mobile device and then an acting force exerted on the mobile device in a horizontal direction and in a vertical direction. The agent detects that the mobile device is slipping off (for example, on a desktop) when the acting force in the horizontal direction is not zero. In response thereto, the agent establishes a communication channel with the backup server as above. If the agent then detects that the mobile device is falling down, then the agent uploads the information to the backup server through this communication channel already established in advance.
However, the time required to establish the communication channel with the back-up server (especially to authenticate the mobile device) may be relatively long. Therefore, the time remaining before the possible breakage of the mobile device may be not be sufficient to upload the information to the back-up server (for example, when the mobile device falls down suddenly).
Moreover, the data rate of the communication channel may be sufficiently low (for example, in case of poor communication quality) to impair the uploading of the information to the back-up server.
In any case, it may not possible to establish the communication channel with the back-up server (for example, when no access to the Internet is available), and then to upload the information stored in the mobile device thereto.
Therefore, the back-up of the information stored in the mobile devices may not be guaranteed.